/*
 * Copyright (c) 2020 - present, Inspur Genersoft Co., Ltd.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *       http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.inspur.edp.bff.designtime.generator.api.actioninterface.mgrInfo;

import com.inspur.edp.bff.designtime.generator.api.actioninterface.VoMgrInterfaceGenCtx;
import com.inspur.edp.bff.spi.i18n.ViewModelMgrInfo;
import com.inspur.edp.cef.gencommon.MediateType;
import com.inspur.edp.cef.generator.apiGenerator.CefApiGeneratorContext;
import com.inspur.edp.cef.generator.apiGenerator.dataType.mgrInterface.mgrInfo.MgrInfoGenerator;
import com.inspur.edp.das.commonmodel.entity.GspCommonModel;
import com.inspur.edp.formserver.viewmodel.GspViewModel;

public class VoMgrInfoGenerator extends MgrInfoGenerator {

  private CefApiGeneratorContext parentContext;
  private GspViewModel vo;

  public VoMgrInfoGenerator(CefApiGeneratorContext parentContext, GspCommonModel model) {
    super(parentContext, model);
    this.parentContext = parentContext;
    this.vo = (GspViewModel) model;
  }

//  @Override
//  protected void beforeInitialize() {
//    super.beforeInitialize();
//    parentContext.setVoMgrInfoType(
//        new MediateType(parentContext.getApiGenContext().getPackageName(), getName()));
////TODO: java版临时注释 国际化优先级低
//    //    //国际化生成时抽取
////    CefResourceExtractContext context = new CefResourceExtractContext(vo.GeneratingAssembly,
////        new Lcm.Metadata.Api.I18nResourceItemCollection());
////    ViewModelResourceExtractor extractor = new ViewModelResourceExtractor(vo, context);
////    extractor.Extract();
//  }

  @Override
  protected Class getParentClassType() {
    return ViewModelMgrInfo.class;
  }
}
